﻿using System;
using JTLeigh.Commerce.Spencer.Features.ProductImages.Common.Entities;

namespace JTLeigh.Commerce.Spencer.Features.ProductImages.Data.Providers
{

	/// <summary>
	/// Provider used to retrieve product image metadata, including sizes and views, from the 
	/// database.
	/// </summary>
	public interface IProductImageMetadataProvider
	{

		#region Methods

		/// <summary>
		/// Gets all product image metadata from the database.
		/// </summary>
		/// <param name="tenantId">The tenant identifier <see cref="Guid"/> of the tenant whose
		/// metadata is to be retrieved.</param>
		/// <returns>A <see cref="ProductImageMetadata"/> containing all sizes, views, etc.</returns>
		ProductImageMetadata GetProductImageMetadata(Guid tenantId);

		#endregion // Methods

	}

}
